#!/usr/bin/python2
# -*- encoding: utf-8 -*-
# Importações
import os
import errno
#notify-send "JDK 6 instalado com sucesso, agr é só relaxar B-)" -i

os.system("clear")

print   ("""
    |   Software auxiliar para a instalação e preparação de máquina
    |   perfil desenvolvedores em Java.
    |   Bugs e reclamações: https://jul10l1r4.github.io/
    |   Software dedicado a distro UBUNTU
    |   Sob licença: GNU GPL versão 3
        -----------------------------------------------------------
        """)
# Declaração de variaveis
continua = 1
acao = 0;

###########====== Funcoes ==========#############

def jdk6 ():
	try:
		os.system("chmod +x instaladores/*.bin")
		os.system("./instaladores/jdk6.bin")
		os.system("sudo mkdir /usr/lib/jvm")
		os.system("mv jdk1.6.*/ java-6-oracle")
		os.system("sudo mv java-6-oracle/ /usr/lib/jvm")
		os.system("sudo update-alternatives --install \"/usr/bin/java\" \"java\" \"/usr/lib/jvm/java-6-oracle/bin/java\" 6")
		os.system("sudo update-alternatives --install \"/usr/bin/javac\" \"javac\" \"/usr/lib/jvm/java-6-oracle/bin/javac\" 6")
		os.system("sudo update-alternatives --install \"/usr/bin/javaws\" \"javaws\" \"/usr/lib/jvm/java-6-oracle/bin/javaws\" 6")
		print("\33[1;32m JDK 6 instalado com sucesso\33[m")
		return "\33[1;32m JDK 6 instalado com sucesso\33[m"
	except:
		print("\33[1;31m Houve algum erro durante a instalação, analize os logs\33[m")
		return "\33[1;31m Houve algum erro durante a instalação do JDK6, analize os logs\33[m"
def jdk7 ():
	try:
		os.system("sudo mkdir /usr/lib/jvm")
		os.system("sudo mv instaladores/java-7-oracle/ /usr/lib/jvm")
		os.system("sudo update-alternatives --install \"/usr/bin/java\" \"java\" \"/usr/lib/jvm/java-7-oracle/bin/java\" 7")
		os.system("sudo update-alternatives --install \"/usr/bin/javac\" \"javac\" \"/usr/lib/jvm/java-7-oracle/bin/javac\" 7")
		os.system("sudo update-alternatives --install \"/usr/bin/javaws\" \"javaws\" \"/usr/lib/jvm/java-7-oracle/bin/javaws\" 7")
		print("\33[1;32m JDK 7 instalado com sucesso\33[m")
		return "\33[1;32m JDK 7 instalado com sucesso\33[m"
	except:
		print("\33[1;31m Houve algum erro durante a instalação, analize os logs\33[m")
		return "\33[1;31m Houve algum erro durante a instalação do JDK7, analize os logs\33[m"
def jdk8 ():
	try:
		os.system("sudo add-apt-repository ppa:webupd8team/java -y")
		os.system("sudo apt-get update")
		os.system("sudo apt-get install oracle-java8-installer -y")
		print("\33[1;32m JDK 8 instalado com sucesso\33[m")
		return "\33[1;32m JDK 8 instalado com sucesso\33[m"
	except:
		print("\33[1;31m Houve algum erro durante a instalação, analize os logs\33[m")
		return "\33[1;31m Houve algum erro durante a instalação do JDK8, analize os logs\33[m"

while(continua == 1):
    print("""
        Escolha uma das alternativas:
        0 → Cancelar [pfvo, não dê ^c]
        1 → Instalar apenas a JDK 6
        2 → Instalar apenas a JDK 7
        3 → Instalar apenas a JDK 8
        4 → Instalar todos três (só quero relaxar)
        5 → Selecionar o JDK padrão para o sistema
        """)
    try:
        acao = int(raw_input("Digite o n° da ação que deseja: "))
        if(acao == 0):
            print("Adeus")
            break
        else:
			print("Preparando ambiente de instalação")
			if(acao == 1):
					# JDK 6
				jdk6()
				continue
			if(acao == 2):
					# JDK 7
				jdk7()
				continue
			if(acao == 3):
					# JDK 8
				jdk8()
				continue
			if(acao == 4):
					# Todos
				jar6 = jdk6()
				jar7 = jdk7()
				jar8 = jdk8()
				os.system("clear")
				print(jar6)
				print(jar7)
				print(jar8)
				continue
			if(acao == 5):
					# Selecionar padrao
				os.system("sudo update-alternatives --config java")
				continue

    except:
	print("\nDesculpe, mas nao entendi o que você digitou")
	print("então tente novamente")
	continue
    #stop é temporario
    break
